DOS-Gaming-General-MIDI-Comparison
Audio Preview
Share or Embed This Item
- Publication date
- 2023-03-05
Grand MS-DOS gaming General MIDI showdown
by John Novak, 2023-03-05
This pack contains recordings of 46 MS-DOS game soundtracks recorded on 7 different MIDI modules.
The following MIDI modules were used:
- Roland Sound Canvas SC-55, ROM version 1.21 (hardware module)
- Yamaha MU80 (hardware module)
- Roland Sound Canvas VA (softsynth), SC-55, SC-88, SC-88Pro & SC-8820 modes
- Yamaha S-YXG50 (softsynth)
https://blog.johnnovak.net/2023/03/05/grand-ms-dos-gaming-general-midi-showdown/
REAPER project files
The reaper-project.zip file contains two REAPER 6.77 project files:
- general-midi-comparison-record.rpp: The project file used for the recording process.
- general-midi-comparison-flac.rpp: A project file referencing the FLAC files for your listening convencience. To use it, download the FLAC files and put them into the Renders subdirectory inside the REAPER project directory. REAPER will take its time when loading the project for the first time to generate the waveform "peaks" files for the FLACs, so please be patient. All recordings are time-aligned and volume-matched, so you can easily switch between the them during playback to perform A/B comparisons using REAPER’s exclusive solo functionality (Ctrl+Alt+LeftClick on the Solo (S) button).
Capturing MIDI data
- Record MIDI data from the game running in DOSBox Staging via loopMIDI into REAPER. The REAPER project was set to 120 BPM and 960 PPQ MIDI event resolution, resulting in a MIDI event quantisation of 60 × 1000 / 120 / 960 = ~0.52 ms.
- Split the continuous MIDI stream into individual songs (when needed), perform minimal cleanup if necessary, and insert a “GS Reset” SysEx message at the start of each song.
Notes and exceptions
- The Elders Scrolls: Arena — I did not record these in-game but I used the PX Player DOS utility that can play back XMI MIDI files using the original Miles Sound System drivers. You can download PX Player from here: https://www.vogons.org/viewtopic.php?f=24&t=37630
- System Shock — Similarly, I used PX to play the intro tune to make the transition to the menu screen at the end sound smoother.
- Star Wars: TIE Fighter — The sound driver lowers the music volume during voice-overs even when digital sound is disabled. I edited these volume fades out manually while taking care to leave “legitimate” fades intact (e.g., during song transitions).
- Quest for Glory III — Removed the fade-in at the start of the Apothecary’s Hut song.
- Warcraft II — Imported the official MIDI tracks released by the composer straight into REAPER.
- Leisure Suit Larry 6 — Edited out the sound effects from the intro music because I found them too distracting.
- Realms of Arkania — I used PX for the intro music because the game insists on automatically exiting the intro well before the end of the tune.
- Some games send copious amounts of MIDI CC (Continuous Controller), PC (Program Change), or SysEx (System Exclusive) data right before the first notes of the compositions. This sudden surge of MIDI messages can take some time to process, causing the first note to be partially cut off. Perhaps this wasn’t a problem on all MIDI modules, especially later ones such as the SC-55 mkII, but they’re definitely causing issues on my first revision SC-55 and MU80 hardware modules. Softsynths are unaffected by this.
Recording the audio
- Sequence the songs on a timeline, and record all of them in one go.
- For the hardware recordings, the MIDI data was fed to the MIDI modules via a Midisport 2x2 USB box, and the audio was recorded at 24-bit / 48kHz through the internal DAC of a Yamaha MG10XU analog mixer (it can also act as a USB audio interface). This is a “prosumer” level, neutral-sounding mixer with a flat frequency response and very little self-noise (well below -96dBFS).
- The output knob of the Roland SC-55 was set to 12’o clock; this was the best balance between having a good signal level and not driving the module into distortion even on high peaks. The Yamaha MU80 could be set a fair bit higher; 3’o clock was deemed to be the best position for the Yamaha’s output knob.
- For the softsynth VSTs, the audio was rendered at faster-than-realtime speed using REAPER’s offline render functionality.
Post-processing
- Only volume adjustments were performed in post-processing to normalise the perceived loudness of the individual songs, plus some fade-outs were added. The volume adjustments were added non-destructively in the REAPER project, so the source waveforms got scaled only once before the final render.
- Noise-shaped dither was enabled for the final render due to the 24 to 16-bit reduction.
- Addeddate
- 2023-02-26 06:04:08
- Identifier
- DOS-Gaming-General-MIDI-Comparison
- Scanner
- Internet Archive Python library 1.8.1
- Year
- 2023
comment
Reviews
There are no reviews yet. Be the first one to
write a review.
14 Views
1 Favorite